package com.ruoyi.project.member.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 用户基本（常用）信息对象 lbl_cs_user
 * 
 * @author BaoL
 * @date 2023-03-23
 */
public class LblCsUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 用户名 */
    private String username;

    /** 密码（冗余，密文） */
    private String password;

    /** 昵称 */
    @Excel(name = "昵称")
    private String nickname;

    /** 头像URL */
    @Excel(name = "头像URL")
    private String avatar;

    /** 手机号码 */
    @Excel(name = "手机号码")
    private String phone;

    /** 电子邮箱 */
    private String email;

    /** 微信登录openid */
    private String weixinOpenid;

    /** 微信登录会话KEY */
    private String sessionKey;

    /** 学号或教师编号 */
    @Excel(name = "学号或教师编号")
    private String sno;

    /** 学院 */
    @Excel(name = "学院")
    private String college;

    /** 专业 */
    @Excel(name = "专业")
    private String specialty;

    /** 哪一届 */
    @Excel(name = "哪一届")
    private String step;

    /** 认证图片 */
    @Excel(name = "认证图片")
    private String approveImg;

    /** 认证状态: 0-未认证;1-认证中;2-认证成功;3-认证失败 */
    @Excel(name = "认证状态: 0-未认证;1-认证中;2-认证成功;3-认证失败")
    private Integer approveStatus;

    /** 是否启用，1=启用，0=未启用 */
    @Excel(name = "是否启用，1=启用，0=未启用")
    private Integer isEnable;

    /** 最后登录IP地址（冗余） */
    @Excel(name = "最后登录IP地址", readConverterExp = "冗=余")
    private String lastLoginIp;

    /** 累计登录次数（冗余） */
    @Excel(name = "累计登录次数", readConverterExp = "冗=余")
    private Integer loginCount;

    /** 最后登录时间（冗余） */
    @Excel(name = "最后登录时间", readConverterExp = "冗=余")
    private Date lastLoginTime;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUsername(String username) 
    {
        this.username = username;
    }

    public String getUsername() 
    {
        return username;
    }
    public void setPassword(String password) 
    {
        this.password = password;
    }

    public String getPassword() 
    {
        return password;
    }
    public void setNickname(String nickname) 
    {
        this.nickname = nickname;
    }

    public String getNickname() 
    {
        return nickname;
    }
    public void setAvatar(String avatar) 
    {
        this.avatar = avatar;
    }

    public String getAvatar() 
    {
        return avatar;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }
    public void setEmail(String email) 
    {
        this.email = email;
    }

    public String getEmail() 
    {
        return email;
    }
    public void setWeixinOpenid(String weixinOpenid) 
    {
        this.weixinOpenid = weixinOpenid;
    }

    public String getWeixinOpenid() 
    {
        return weixinOpenid;
    }
    public void setSessionKey(String sessionKey) 
    {
        this.sessionKey = sessionKey;
    }

    public String getSessionKey() 
    {
        return sessionKey;
    }
    public void setSno(String sno) 
    {
        this.sno = sno;
    }

    public String getSno() 
    {
        return sno;
    }
    public void setCollege(String college) 
    {
        this.college = college;
    }

    public String getCollege() 
    {
        return college;
    }
    public void setSpecialty(String specialty) 
    {
        this.specialty = specialty;
    }

    public String getSpecialty() 
    {
        return specialty;
    }
    public void setStep(String step) 
    {
        this.step = step;
    }

    public String getStep() 
    {
        return step;
    }
    public void setApproveImg(String approveImg) 
    {
        this.approveImg = approveImg;
    }

    public String getApproveImg() 
    {
        return approveImg;
    }
    public void setApproveStatus(Integer approveStatus) 
    {
        this.approveStatus = approveStatus;
    }

    public Integer getApproveStatus() 
    {
        return approveStatus;
    }
    public void setIsEnable(Integer isEnable) 
    {
        this.isEnable = isEnable;
    }

    public Integer getIsEnable() 
    {
        return isEnable;
    }
    public void setLastLoginIp(String lastLoginIp) 
    {
        this.lastLoginIp = lastLoginIp;
    }

    public String getLastLoginIp() 
    {
        return lastLoginIp;
    }
    public void setLoginCount(Integer loginCount) 
    {
        this.loginCount = loginCount;
    }

    public Integer getLoginCount() 
    {
        return loginCount;
    }
    public void setLastLoginTime(Date lastLoginTime) 
    {
        this.lastLoginTime = lastLoginTime;
    }

    public Date getLastLoginTime() 
    {
        return lastLoginTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("username", getUsername())
            .append("password", getPassword())
            .append("nickname", getNickname())
            .append("avatar", getAvatar())
            .append("phone", getPhone())
            .append("email", getEmail())
            .append("weixinOpenid", getWeixinOpenid())
            .append("sessionKey", getSessionKey())
            .append("sno", getSno())
            .append("college", getCollege())
            .append("specialty", getSpecialty())
            .append("step", getStep())
            .append("approveImg", getApproveImg())
            .append("approveStatus", getApproveStatus())
            .append("isEnable", getIsEnable())
            .append("lastLoginIp", getLastLoginIp())
            .append("loginCount", getLoginCount())
            .append("lastLoginTime", getLastLoginTime())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
